#ifndef __PLATFORM_H__
#define __PLATFORM_H__

// define the appropriated platform description 
#define PLATFORM_OSTYPE         EclrOS_uCOSII 
#define OS_UCOSII

#define NO_32BIT_TRIGONOMETRY_FUNCTION_SUPPORT

// general header
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <setjmp.h>
#include <stdarg.h>

#define __LOGGING__
#define __DEBUG__
#define LOG_CONSOLE_LOGGING
//#define LOG_UDP_LOGGING

//#define LOG_MSG_LOGGING
//#define LOG_DBG_LOGGING

// enable/disable platform threading support
#define PLATFORM_THREADING_SUPPORT
// enable OS independent non-preemptive threading
//#define PLATFORM_BUILTIN_THREADING_SUPPORT

//#define PLATFORM_CTORS_NOTSUPPORTED  
//#define GLOBAL_OPERATOR_NEW_OVERRIDE

#define PLATFORM_BUILTIN_LINKER_SUPPORT
//#define PLATFORM_EXECUTION_INFLASH_SUPPORT // evaluation of the prototype

//#define PLATFORM_DOWNLOADCHANGE_SUPPORT
#define PLATFORM_DEBUG_SUPPORT
#define PLATFORM_BREAKPOINT_SUPPORT

#define PLATFORM_LOGICANALYZER_SUPPORT

//#define PLATFORM_CALLSTACK_SUPPORT
#ifdef PLATFORM_EXECUTION_INFLASH_SUPPORT
#undef PLATFORM_DOWNLOADCHANGE_SUPPORT
#undef PLATFORM_DEBUG_SUPPORT
#endif

//#define PLATFORM_DOWNLOADCHANGE_SUPPORT

//#define PLATFORM_CALLSTACK_SUPPORT

#include "etarget.h"
#endif //#ifndef __PLATFORM_H__
